package com.ctcemti.mdm.project.sys.service;


import com.ctcemti.mdm.common.result.Result;
import com.ctcemti.mdm.project.sys.entity.OrgProject;
import com.github.pagehelper.PageInfo;

import java.util.List;

public interface IProjectService {

    /**
     * 插入或更新项目
     * @param orgProject
     * @return
     */
    Result insertOrUpdate(OrgProject orgProject);

    /**
     * 导入项目
     * @param orgProjects
     * @return
     */
    Result importPros(List<OrgProject> orgProjects);

    /**
     * 删除
     * @param orgProject
     * @return
     */
    Result delete(OrgProject orgProject);

    /**
     * 根据组织ID获取项目
     * @param companyId
     * @return
     */
    PageInfo<OrgProject> getProjectsByPid(String companyId, Integer page, Integer limit);

    /**
     * 获取所有项目
     * @param page
     * @param limit
     * @return
     */
    PageInfo<OrgProject> getAllProjects(Integer page, Integer limit,OrgProject entity);

    /**
     * 根据人员id获取项目
     * @param pId
     * @return
     */
    Result getProjectsForTree(String pId,String type,String personId);

    /**
     * 移动项目
     * @param orgId
     * @param id
     * @return
     */
    Result moveTo(String orgId,String id);
    /* *
     * @Author bxf
     * @Description 获取登录人所有的项目
     * @Date 16:32 2019/11/19
     * @param token
     * @return java.util.List<com.ctcemti.mdm.project.sys.entity.OrgProject>
     */
    List<OrgProject> selectProByUserId(String token);

}
